#ifndef SPECIALABILITY_H
#define SPECIALABILITY_H


#include "dtwenty_global.h"
#include "dtwentyitem.h"
#include "dtwentyitemcontainer.h"


class DTWENTYSHARED_EXPORT SpecialAbility : public DTwentyItem
{
    Q_OBJECT

public:

    Q_INVOKABLE SpecialAbility(DTwentyItem *parent = 0);
    SpecialAbility(const SpecialAbility& other);

    virtual int type() const;


};

Q_DECLARE_METATYPE(SpecialAbility)


class DTWENTYSHARED_EXPORT SpecialAbilities : public DTwentyItemContainer
{
    Q_OBJECT

public:

    Q_INVOKABLE SpecialAbilities(QObject* parent = 0) :
        DTwentyItemContainer(parent)
    {
        registerChildType<SpecialAbility>();
    }

    SpecialAbilities(const SpecialAbilities& other) :
        DTwentyItemContainer(other)
    {
    }

    virtual int type() const
    {
        return qMetaTypeId<SpecialAbilities*>();
    }

};

Q_DECLARE_METATYPE(SpecialAbilities)


#endif // SPECIALABILITY_H
